perm filename SCRIPT.2[DOC,TOB]2 blob sn#012074 filedate 1972-11-09 generic text, type T, neo UTF8
00100		todo
00200	
00300	1.	table w/ doll and snake
00400	2.	cut out time-sharing glitches in rotations
00500	3.	shorten many sections to keep from dragging
00600	
     

00100		WORK PRINT LASER SEGMENT
00200	
00300	:17	TILT DOWN TO LASER AND UP
00400	:12	PAN TV TO DEFL ASSEMBLY TO BARBIE
00500	:27	JERRY DEMONSTRATES SETUP
00600	:21	DEFLECTION ASSEMBLY CLOSEUP WITH BARBIE IN BACK
00700	:29	CLOSEUP BARBIE LIGHTS ON
00800			HORIZONTAL 16 SEC, VERTICAL 13 SEC
00900	:30	LASER ON BARBIE-LIGHTS OUT
01000			HORIZ 16 SEC, VERTICAL 14 SEC
01100	:17	SNAKE WITH CROSS HATCHES FORMING
01200	:36	CROSS-HATCHED SNAKE ROTATING
01300			14 SEC STATIC, 22 SEC ROTATING
01400	:29	CROSS-HATCHED DOLL ROTATES
01500	:55	SNAKE BEING CIRCLE FIT
01600			39" FITTING, ROTATES 16"
01700	1:30	BABY DOLL BEING CIRCLE FIT (DOLL IS ON ITS SIDE)
01800	
01900	:26	FITTED BABY DOLL ROTATES (UPRIGHT POSITION)
02000	:11	AGIN TITLE
02100	
02200	
     

00100		REVISIONS FOR LASER SEGMENT
00200	
00300	
00400	
00500		BARBIE LONG SHOT
00600	:5	KEEP ONLY A LITTLE BIT SHOWING:
00700			MOTION IN ORIENTATION A
00800			ROTATION OF CYLINDRICAL LENS
00900			MOTION OF SCAN ORIENTATION B
01000	
01100		BARBIE CLOSEUP
01200	:25	CUT OUT FIRST 4 SECONDS WHERE BEAM WANDERS AIMLESSLY
01300		START WITH SCAN FROM BOTTOM
01400		MIGHT SPEED THIS UP TO KEEP THE PACE UP
01500	
01600		BARBIE IN THE DARK
01700	:20 	SPEED THIS UP TO KEEP FROM DRAGGING (3/2 SPEEDUP)
01800	
01900	
02000		ADD TABLE SCENE WITH BABY DOLL AND SNAKE
02100		NOT LONG, JUST TO INTRODUCE
02200		SNAKE FORMING
02300	:13 	CUT OFF STATIC PART AT THE END
02400	
02500		DOLL COMPLETE
02600	:9	CUT THIS TO 9 SECS
02700	
02800		ROTATING SNAKE
02900	:15	CUT OFF STATIC PART AT BEGINNING
03000		CUT ROTATION TO 15 SEC
03100	
03200		ROTATING DOLL
03300	:19	CUT ROTATION TO 19 SEC
03400	
03500		SNAKE CIRCLE FIT
03600	:34	CUT SEVERAL REPEATS FROM END
03700	:12	CUT STATIC PART AFTER ROTATION
03800	
03900		DOLL CIRCLE FIT
04000	1:33	PROLONG LINE OF PTS TO 3 SECS (LAB)
04100	
04200		DOLL ROTATES (CYLINDERS)
04300	:26
     

00100	why laser ranging or binocular vision
00200	explain cross hatching
00300	why are figures hollow
00400	why iteration on circle fit
00500	volume vs surface representations
00600	laser path
00700	transitions to graphics
00800	circle fitting technique
00900	line fitting technique
01000	dotted line (axis guess)
01100	why,why,why
01200		symbolic representation
01300	
01400		BARBIE CLOSEUP
01500	The plane of light intersects objects along a sequence of
01600	profiles.  Curvature of the surface appears as curvature of
01700	the profiles in the image.   Depth discontinuities
01800	appear as discontinuities in the profiles.  The two scans
01900	provide uniform resolution for boundaries of all orientations.
02000	The beam is focused to less than 2 mm width near the table.
02100		25 sec
02200		**the explanation of the two scans still does not make it
02300		include the beam width and resolution first, then the
02400		resolution between profiles is much poorer.  Consider boundaries
02500		parallel to the profiles.
02600	
02700		BARBIE IN THE DARK
02800	This was shot in the dark to see the scene as it appears to the
02900	TV camera.  An interference filter transmits only a narrow band
03000	around the laser wavelength.  The beam at the table is very weak compared
03100	to sunlight.
03200		15 sec
03300	
03400		BARBIE IN THE DARK
03500	We see the scene as it appears to the TV camera through a narrow
03600	band interference filter tuned for the laser.
03700	
03800		FORMING SNAKE
03900	A graphics console displays the crossed scan sequences for a
04000	snake-like object.  The profiles are smoothed and thinned,
04100	then fit by curved segments.
04200		11 secs
04300	
04400	
04500	
04600		BABY DOLL CROSS-HATCHED COMPLETE
04700	Now we see crossed profiles for a baby doll.  Camera resolution
04800	and beam width limit depth resolution to 1 mm.
04900		9 secs
05000	
05100		ROTATING SNAKE
05200	We see only the surface facing the camera; that hollow shell
05300	is shown rotating in space.  The calibration
05400	procedure minimizes depth inconsistencies between the two
05500	scans.
05600	
05700		ROTATING DOLL
05800	Our aim is a perceptual system which makes its own models of
05900	objects in a symbolic representation based on volume primitives,
06000	that is, arm-like parts, rather than surface patches.
06100	The representatio depends on a part/whole segmentation.   Its
06200	power comes from breaking complex objects into simple parts.  The 
06300	choice of primitives is important to implement a good choice of
06400	parts.  We need to go from surface data as we see here to volume
06500	descriptions of primitives.  We use primitives called "generalized
06600	cylinders" which are defined by cross sections defined along a space
06700	curve, called the axis.  These primitives include locally conical,
06800	locally helical and locally toroidal shapes.
06900	
07000		ROTATING DOLL
07100	hollow shell
07200	guesses about back
07300	arm-like primitives
07400	
07500	
07600	
07700		ROTATING DOLL
07800	This representation of an object as part of a hollow shell is
07900	inadequate for recognition.  We need a model of the entire
08000	object and have chosen to work with a volumetric or arm-like
08100	model rather than attempt to characterize objects by their
08200	surface properties.
08300	
08400		SNAKE CIRCLE FIT
08500	axis,cylindrical cross section
08600	iteration
08700	a single primitive
08800	
08900	
09000		ROTATING SNAKE
09100	WE SEE THE VISIBLE SURFACE OF THE SNAKE, ROTATING IN SPACE, TO SEE
09200	THE 3-D NATURE OF THE DATA.  A CALIBRATION PROCEDURE MINIMIZES THE
09300	DEPTH INCONSISTENCIES BETWEEN THE TWO SCANS.
09400	THE MASS OF SURFACE DEPTH DATA IS INADEQUATE FOR RECOGNITION. 
09500	WE NEED TO MODEL THE ENTIRE OBJECT AND HAVE CHOSEN A VOLUME REPRESENTATION
09600	WITH ARM-LIKE PARTS,RATHER THAN A SURFACE MODEL.
09700	THE PRIMITIVES ARE DESCRIBED BY A CROSS SECTION ALONG AN AXIS.
09800	AS A BEGINNING, WE HAVE USED CIRCULAR CROSS SECTIONS.  PRELIMINARY
09900	SEGMENTATION DEFINES AN APPROXIMATE AXIS.  CROSS SECTIONS NORMAL TO 
10000	THE AXIS ARE OBTAINED, FROM WHICH AN IMPROVED AXIS APPROXIMATION IS
10100	MADE IN AN ITERATIVE PROCEDURE.  THE PROCEDURE EXTENDS THE DESCRIPTION
10200	AS FAR AS CONSISTENT.  THIS OBJECT CAN BE DESCRIBED BY A SINGLE PART.
10300	
10400		ROTATING SNAKE CIRCLE-FIT
10500	THE REPRESENTATION DEPENDS ON A PART/WHOLE SEGMENTATION.  ITS POWER
10600	COMES FROM BREAKING COMPLEX OBJECTS INTO SIMPLE PARTS.  THE PRIMITIVES
10700	WE USE GIVE A GOOD CHOICE OF PARTS.
10800	
10900	
11000		DOLL CIRCLE-FIT
11100	PRELIMINARY SEGMENTATION AND AN APPROXIMATION TO THE AXIS OF THE SEGMENT
11200	ARE THE STARTING PLACE FOR THE ITERATIVE FITTING OF PRIMITIVES TO THE
11300	DOLL.  THE DOLL REQUIRES A DESCRIPTION OF ITS PARTS.  EACH PART IS FIT
11400	AND EXTENDED.  
11500	
11600	
11700	A PRELIMINARY SEGMENT AND ITS AXIS ARE SHOWN H
11800	THE AXIS OF A PRELIMINARY SEGMENT IS SHOWN HERE.  THIS IS THE STARTING
11900	PLACE FOR THE ITERATIVE FITTING OF PRIMITIVES TO PARTS OF THE DOLL.  EACH
12000	PART IS FIT AND EXTENDED.  IN COMPLEX OBJECTS SUCH AS THIS, THE CURRENT
12100	
12200	PROGRAM RELIES ON ITERATION EXTENSIVELY TO RECOVER FROM ERRORS.  FOR
12300	EXAMPLE, WITH THE BODY, THE CROSS SECTION BRIDGES TWO SEPARATE PARTS,
12400	IN SPITE OF TESTS TO PREVENT IT.  IN A LATER ITERATION, THIS IS PARTIALLY
12500	CORRECTED.  
12600	
12700	
12800		ROTATING SNAKE
12900	SURFACE POINTS ILLUMINATED BY THE LASER AND VISIBLE TO THE CAMERA
13000	ARE SHOWN ROTATING IN SPACE.  FOR RECOGNITION AND MANIPULATION,
13100	THE SYSTEM MUST HAVE A MODEL FOR THE ENTIRE OBJECT.  WE HAVE
13200	CHOSEN TO REPRESENT THE DATA FOR THE VISIBLE SURFACE WITH
13300	VOLUME PRIMITIVES OF ARM-LIKE PARTS, RATHER THAN CHARACTERIZE
13400	
13500		SNAKE CIRCLE FIT
13600	A preliminary grouping chains together laser traces which are adjacent
13700	parallel, and have similar lengths.  These indicate parts with smoothly
13800	changing cross section.  The midpoints of traces provide an initial guess
13900	for the axis.  An iterative procedure interpolates circular cross sections
14000	normal to the approximate axi, then determines a better guess for the axis
14100	and repeats.  In the process, the generalized cylinder is extended.  The
14200	cylinder is segmented at places where the cross section changes drastically.
14300	
14400	
14500		TILT DOWN TO LASER
14600	Our study of curved and complex objects depends on depth information
14700	not plane projections from one eye.  Stereo vision performs the same
14800	function for humans.  Depth data is obtained from a laser triangulation
14900	system which uses a laser, below the table, and a tv camera.  
15000	
15100		TILT DOWN TO LASER (17 SEC)
15200		PAN FROM TV TO ASSEMBLY TO BARBIE (12 SEC)
15300	Our study of curved and complex objects depends on depth information,
15400	not simply flat projections on one eye.  We describe the hardware, then
15500	the use of the data. 
15600		12 sec
15700	Light from the laser under the table passes through
15800	a deflection assembly which casts a plane of light on objects viewed by
15900	the TV camera. Exactly as in stereo, angles are known for corresponding
16000	points from TV camera and laser.
16100		15 sec
16200		JERRY DEMONSTRATES OPTICAL PATH	27 SEC
16300	We see the optical path from the laser through the red periscope up to
16400	the table, then to a relay mirror.  The 2mm beam is much narrower than
16500	it appears on the film.  
16600		11 sec
16700	The beam passes to the deflection assembly, where a cylindrical lens
16800	diverges the beam into a plane, and a rotating mirror sweeps the
16900	plane across the scene.
17000		11 sec
17100	
17200		BARBIE CLOSEUP 25 SEC
17300	As the plane of light rotates, it intersects objects along a sequence of
17400	profiles.  Curvature of the surface appears as curvature of profiles in the
     

00100		BARBIE CLOSEUP 25 SEC
00200	PLANE INTERSECTS ALONG SEQUENCE OF PROFILES
00300	CURVATURE SURFACE--CURVATURE OF IMAGE
00400	DEPTH DISCONTINUITY SURFACE--DISCONTINUIT IMAGE
00500	UNIFORM RESOLUTION OF BOUNDARIES
00600	
00700	
00800		BARBIE IN DARK  20 SEC
00900	IN DARK AS APPEARS TO TV
01000	INTERFERENCE FILTER TUNED TO LASER
01100	BEAM AT TABLE 1/40 SUNLIGHT
01200	
01300		TABLE SCENE WITH BABY DOLL AND SNAKE
01400	WATCH ANALYSIS OF THESE OBJECTS
01500	SOMEWHAT SIMPLER THAN BARBIE
01600	
01700	FORMING SNAKE 13 SEC
01800	CONSOLE DISPLAY OF SEQUENCE OF PROFILES
01900	THINNED, SMOOTHED
02000	FIT BY CURVED SEGMENTS
02100	
02200		BABY DOLL COMPLETE  9 SEC
02300		ROTATING SNAKE 15 SEC
02400		ROTATING DOLL  19 SEC
02500	SURFACE POINTS
02600	CALIBRATION FOR CONSISTENCY
02700	3-D HOLLOW SHELL
02800		WHY HOLLOW
02900	NEED MODEL FOR RECOGNITION
03000		OWN MODELS SYMBOLIC REPRESENTATION
03100		GUESSES ABOUT BACKSIDE
03200	SOLID PRIMITIVES VS SURFACE MODEL
03300	CROSS SECTION VARYING ALONG A SPACE CURVE AXIS
03400	CIRCULAR CROSS SECTION
03500	ELONGATED OBJECTS
03600	
03700	
03800		CIRCLE FITTING SNAKE	34 SEC
03900			ROTATES		12 SEC
04000	PRELIMINARY GROUPING FOR STARTING PLACE
04100		ADJACENT, PARALLEL, SAME LENGTH
04200	APPROXIMATE AXIS
04300	CIRCULAR CROSS SECTIONS NORMAL TO AXIS
04400		HOW ARE CIRCLES FIT
04500	GLOBAL ESTIMATE OF CROSS SECTION FUNCTION
04600	IMPROVED AXIS APPROXIMATION
04700	ITERATE
04800	EXTENDS WHILE CONSISTENT
04900	SNAKE A SINGLE PART
05000		KNOW AXIS IS NOT CLOSED
05100		CAN DESCRIBE AXIS SPACE CURVE
05200		KNOW FORM AND DIAMETER OF CROSS SECTION
05300	ANALOGY WITH NATURAL LANGUAGE DESCRIPTION
05400	
05500		CIRCLE FITTING BABY DOLL	1:33
05600			ROTATES			  26
05700	AXIS APPROX AND ITERATIVE FIT DESCRIBE ONLY PART
05800	DESCRIBE PARTS OF COMPLEX OBJECTS AND THEIR ASSEMBLY
05900	PRIMITIVES GIVE GOOD CHOICE OF PARTS
06000	ITERATIVE FIT OF PARTS
06100		APPROXIMATE AXIS
06200		NORMAL CROSS SECTIONS
06300		GLOBAL ESTIMATE OF CROSS SECTION FUNCTION
06400		EXTENSION WHERE POSSIBLE
06500	BREAKING OFF AND STARTING ANEW
06600	DEPENDENCE ON ITERATION TO RECOVER FROM ERRORS
06700		BRIDGING BOUNDARIES BETWEEN PARTS
06800	EXTENSIONS
06900		JOINING PARTS FOR COMPLETE DESCRIPTION OF COMPLEX OBJECTS
07000		GENERALIZE CROSS SECTIONS
07100		PROPER FORM FOR INHIBIT CROSSING BOUNDARIES
07200		RECOGNITION
07300	SURFACES OF OBJECTS.
     

00100		TILT DOWN TO LASER (17 SEC)
00200		PAN FROM TV TO ASSEMBLY TO BARBIE (12 SEC)
00300	Our study of curved and complex objects depends on depth information,
00400	not simply flat projections on one eye.  We describe the hardware, then
00500	the use of the data. 
00600		12 sec
00700	Light from the laser under the table passes through
00800	a deflection assembly which casts a plane of light on objects viewed by
00900	the TV camera. Exactly as in stereo, angles are known for corresponding
01000	points from TV camera and laser.
01100		15 sec
01200	
01300		JERRY DEMONSTRATES OPTICAL PATH	27 SEC
01400	We see the optical path from the laser through the red periscope up to
01500	the table, then to a relay mirror.  The 2mm beam is much narrower than
01600	it appears on the film.  
01700		11 sec
01800	The beam passes to the deflection assembly, where a cylindrical lens
01900	diverges the beam into a plane, and a rotating mirror sweeps the
02000	plane across the scene.  Camera resolution and beam width limit
02100	depth accuracy to 1mm.
02200		15 sec
02300	
02400			DEFLECTION ASSEMBLY
02500	We see the mirror rotating as the plane of light sweeps across a barbie
02600	doll.
02700		5 sec
02800			CYLINDRICAL MIRROR ROTATES
02900	Rotation of the cylindrical lens changes the orientation of the plane.
03000		5 sec
03100	
03200		BARBIE CLOSEUP 25 SEC
03300	As the plane of light rotates, it intersects objects along a sequence of
03400	profiles.  Curvature of the surface appears as curvature of profiles in the
03500	image.  Depth discontinuities appear as breaks in the profiles.  
03600		13 sec
03700	
03800		BARBIE IN THE DARK 15 SEC
03900	We see the scene as it appears to the TV camera through a narrow
04000	band interference filter tuned for the laser.  The laser is monochromatic
04005	which allows us to operate in roomlight.
04100	
04200	
04300	
04400		CLOSEUP OF SNAKE AND BABY DOLL 5 SEC
04500	We will see the analysis of two objects which are somewhat simpler than
04600	the barbie doll.
04700		5 sec
04800	
04805		SNAKE FORMING	13 SEC
04900	A graphics console displays crossed scan sequences for a
05000	snake-like object.  The profiles are smoothed and thinned,
05100	then fit by curved segments.
05200		11 secs
05400	
05500		BABY DOLL COMPLETE 9 SEC
05600	
05700	
05800		ROTATING SNAKE	15 SEC
05900	Surface points illumninated by the laser are shown rotating in space.  For
06000	recognition and manipulation, the system must model the entire object from
06100	the 3-D data for this hollow shell, the visible surface.
06200		15 sec
06300	
06400	ROTATING DOLL 19 SEC
06500	We have chosen to use volume models of arm-like parts rather than surface
06600	models.  Volume models are described by a cross section varying along
06700	an axis which is a space curve.  As a beginning, we have used circular
06800	cross sections and techniques suited to elongated objects.
06900		17 sec
07000	
07100		SNAKE CIRCLE FIT	34 SEC
07200			ROTATES 	12 SEC
07300	Preliminary grouping chooses good starting places for an approximate 
07400	axis curve.  Circular cross sections are fit perpendicular to the 
07500	axis.  A global estimate is made of the variation of the cross section
07600	along the axis.  An improved axis estimate is made and the procedure
07700	is iterated several times, while extending the fitting as far as consistent
07800	with a quadratic cross section function.
07900		23 sec
08000	The snake is described by a single part with a curved axis.  The internal
08100	description is similar to one of our natural language descriptions,
08200	a bent stick with given length, circular cross section and known diameter.
08300		13 sec
08400	
08500		BABY DOLL CIRCLE FIT	1:33
08600			ROTATES		  26
08700	The approximate axis shown here, the preliminary grouping, and the
08800	iterative fitting of primitives can only describe pieces of the doll.
08900	The representation describes parts of complex objects, then describes
09000	the whole as an assembly of parts
09100		19 sec
09200	The representation of primitive parts provides good initial guesses
09300	about a decomposition into simple parts.  The iterative procedure takes
09400	preliminary groups, estimates an axis curve, determines normal
09500	cross sections, makes more global estimates of the cross section
09600	function, then extends the description as far as consistent.  Then the
09700	program must break off and start anew at another preliminary grouping.
09800		24 sec
09900	The program depends upon iteration to recover from errors.  Here on the
10000	body of the doll, the program extends the segment across the boundary
10100	between the body and one arm, in spite of tests to prevent that error.
10200	In later iterations, the error is partially corrected
10300		18 sec
10400	The program at this point has only a knowledge of individual parts.
10500	In new work, we are joining descriptions of individual parts into
10600	complete descriptions of complex objects.  The segmentation is being
10700	improved and the analysis extended to a large class of cross sections.
10800	
10900	APPLICATIONS
     

00010	why 2 scans
00020	relative and absolute accuracy
00025	extend last part
00030	
00040	
00100		TILT DOWN TO LASER (17 SEC)
00200	
00300		PAN FROM TV TO ASSEMBLY TO BARBIE (12 SEC)
00400	
00500	Our study of curved and complex objects depends on depth information,
00600	not  simply  flat  projections on one eye.  We describe the hardware,
00700	then the use of the data.
00800		12 sec
00900	
01000	Light  from  the  laser  under  the table passes through a deflection
01100	assembly which casts a plane of light on objects  viewed  by  the  TV
01200	camera. The geometry is exactly as in binocular vision.  Two vertices
01300	and two angles determine the third vertex.
01400		15 sec
01500	
01600	
01700		JERRY DEMONSTRATES OPTICAL PATH	27 SEC
01800	
01900	We see the optical path from the laser through the red  periscope  up
02000	to  the table, then to a relay mirror.  The 2mm beam is much narrower
02100	than it appears on the film.
02200		11 sec
02300	
02400	The  beam passes to the deflection assembly, where a cylindrical lens
02500	diverges the beam into a plane, and  a  rotating  mirror  sweeps  the
02600	plane across the scene.  Camera resolution and beam width limit depth
02700	accuracy to 1mm.
02800		15 sec
02900	
03000	
03100			DEFLECTION ASSEMBLY
03200	
03300	We see the mirror rotating as the plane  of  light  sweeps  across  a
03400	barbie doll.
03500		5 sec
03600	
03700			CYLINDRICAL MIRROR ROTATES
03800	
03900	Rotation of the cylindrical  lens  changes  the  orientation  of  the
04000	plane.
04100		5 sec
04200	
04300	
04400		BARBIE CLOSEUP 25 SEC
04500	
04600	As the plane of light rotates, it intersects objects along a sequence
04700	of profiles.  Curvature  of  the  surface  appears  as  curvature  of
04800	profiles in the image.  Depth discontinuities appear as breaks in the
04900	profiles.
05000		13 sec
05100	
05200	
05300		BARBIE IN THE DARK 15 SEC
05400	
05500	We see the scene as it appears to the TV camera through a narrow band
05600	interference  filter tuned for the laser.  The laser is monochromatic
05700	which allows us to operate in roomlight.
05800	
05900	
06000	
06100		CLOSEUP OF SNAKE AND BABY DOLL 5 SEC
06200	
06300	We will see the analysis of two objects which  are  somewhat  simpler
06400	than the barbie doll.
06500		5 sec
06600	
06700	
06800		SNAKE FORMING	13 SEC
06900	
07000	A  graphics  console displays crossed scan sequences for a snake-like
07100	object.  The profiles are smoothed and thinned, then  fit  by  curved
07200	segments.
07300		11 secs
07400	
07500	
07600		BABY DOLL COMPLETE 9 SEC
07700	
07800	
07900	
08000		ROTATING SNAKE	15 SEC
08100	
08200	Surface  points illuminated by the laser are shown rotating in space.
08300	For recognition and manipulation, the system must  model  the  entire
08400	object from the 3-D data for this hollow shell, the visible surface.
08500		15 sec
08600	
08700	
08800	ROTATING  DOLL 19 SEC We have chosen to use volume models of arm-like
08900	parts rather than surface models.  Volume models are described  by  a
09000	cross  section  varying  along  an axis which is a space curve.  As a
09100	beginning, we have used circular cross sections and techniques suited
09200	to elongated objects.
09300		17 sec
09400	
09500	
09600		SNAKE CIRCLE FIT	34 SEC
09700	
09800			ROTATES 	12 SEC
09900	
10000	Preliminary   grouping   chooses   profiles   which   are   adjacent,
10100	approximately parallel, and smoothly varying length.  These  profiles
10200	indicate surfaces with smoothly changing cross section, good starting
10300	places for an approximate axis curve.  Circular  cross  sections  are
10400	fit  perpendicular  to  the  axis.   A global estimate is made of the
10500	variation of the cross section along  the  axis.   An  improved  axis
10600	estimate  is  made and the procedure is iterated several times, while
10700	extending the fitting as far as consistent  with  a  quadratic  cross
10800	section function.
10900		23 sec
11000	
11100	The snake is described by a single part  with  a  curved  axis.   The
11200	internal  description  intuitively  natural,  a bent stick with given
11300	length, circular cross section and known diameter.
11400		13 sec
11500	
11600	
11700		BABY DOLL CIRCLE FIT	1:33
11800	
11900			ROTATES		26
12000	
12100	The approximate axis shown here, the preliminary  grouping,  and  the
12200	iterative fitting of primitives can only describe pieces of the doll.
12300	The representation describes parts of complex objects, then describes
12400	the whole as an assembly of joints made up of primitive parts.
12500		19 sec
12600	
12700	The representation of primitive parts provides good  initial  guesses
12800	about  a  decomposition  into  simple parts.  The iterative procedure
12900	takes preliminary groups, estimates an axis curve, determines  normal
13000	cross  sections,  makes  more  global  estimates of the cross section
13100	function, then extends the description as far  as  consistent.   Then
13200	the  program  must  break  off  and start anew at another preliminary
13300	grouping.
13400		24 sec
13500	
13600	The  program  depends upon iteration to recover from errors.  Here on
13700	the body of the doll, the program  extends  the  segment  across  the
13800	boundary  between  the body and one arm, in spite of tests to prevent
13900	that error. In later iterations, the error is partially corrected.
13910	Gaps are allowed between parts at joints.
13920	
14000		18 sec
14100	
14200	The  program  at this point has only a knowledge of individual parts.
14300	In new work, we are joining descriptions  of  individual  parts  into
14400	complete  descriptions of complex objects.  The segmentation is being
14500	improved and  the  analysis  extended  to  a  large  class  of  cross
14600	sections.
14700	
14800	APPLICATIONS